Joint的类对象
描述:
用于创建可以将物体连接在一起的多种关节的工厂类。
distance
类型: 函数。
描述:
创建两个物理体之间的距离关节。
签名:
distance: function(self: JointClass,
canCollide: boolean,
bodyA: Body,
bodyB: Body,
anchorA: Vec2,
anchorB: Vec2,
frequency?: number --[[0.0]],
damping?: number --[[0.0]]): Joint
参数:
参数名 | 类型 | 描述 |
---|---|---|
canCollide | boolean | 是否连接到关节的物理体会彼此碰撞。 |
bodyA | Body | 要连接到关节的第一个物理体。 |
bodyB | Body | 要连接到关节的第二个物理体。 |
anchorA | Vec2 | 关节在第一个物理体上的位置。 |
anchorB | Vec2 | 关节在第二个物理体上的位置。 |
frequency | number | 关节的频率,单位为赫兹(默认值为 0.0)。 |
damping | number | 关节的阻尼系数(默认值为 0.0)。 |
返回值:
返回类型 | 描述 |
---|---|
Joint | 新的距离关节。 |
friction
类型: 函数。
描述:
创建两个物理体之间的摩擦关节。
签名:
friction: function(self: JointClass,
canCollide: boolean,
bodyA: Body,
bodyB: Body,
worldPos: Vec2,
maxForce: number,
maxTorque: number): Joint
参数:
参数名 | 类型 | 描述 |
---|---|---|
canCollide | boolean | 是否连接到关节的物理体会彼此碰撞。 |
bodyA | Body | 要连接到关节的第一个物理体。 |
bodyB | Body | 要连接到关节的第二个物理体。 |
worldPos | Vec2 | 关节在游戏世界中的位置。 |
maxForce | number | 可以施加到关节的最大力量。 |
maxTorque | number | 可以施加到关节的最大扭矩。 |
返回值:
返回类型 | 描述 |
---|---|
Joint | 新的摩擦关节。 |
gear
类型: 函数。
描述:
在两个其他关节之间创建齿轮关节。
签名:
gear: function(self: JointClass,
canCollide: boolean,
jointA: Joint,
jointB: Joint,
ratio?: number --[[1.0]]): Joint
参数:
参数名 | 类型 | 描述 |
---|---|---|
canCollide | boolean | 连接到关节的物理体是否可以彼此碰撞。 |
jointA | Joint | 要连接到齿轮关节的第一个关节。 |
jointB | Joint | 要连接到齿轮关节的第二个关节。 |
ratio | number | 齿轮传动比率(默认值为 1.0)。 |
返回值:
返回类型 | 描述 |
---|---|
Joint | 新的齿轮关节。 |
spring
类型: 函数。
描述:
创建两个指定物理体之间的新弹簧关节。
签名:
spring: function(self: JointClass,
canCollide: boolean,
bodyA: Body,
bodyB: Body,
linearOffset: Vec2,
angularOffset: number,
maxForce: number,
maxTorque: number,
correctionFactor?: number --[[1.0]]): Joint
参数:
参数名 | 类型 | 描述 |
---|---|---|
canCollide | boolean | 指定连接的两个物理体是否应该相互碰撞。 |
bodyA | Body | 连接到关节的第一个物理体。 |
bodyB | Body | 连接到关节的第二个物理体。 |
linearOffset | Vec2 | 在物理体A坐标系下,物理体B的位置减去物理体A的位置。 |
angularOffset | number | 物理体B的角度减去物理体A 的角度。 |
maxForce | number | 关节能够施加的最大力。 |
maxTorque | number | 关节能够施加的最大扭矩。 |
correctionFactor | number | 可选的纠正系数,默认为1.0。 |
返回值:
返回类型 | 描述 |
---|---|
Joint | 创建的关节。 |
move
类型: 函数。
描述:
为指定的刚体创建一个新的拖拽关节。
签名:
move: function(self: JointClass,
canCollide: boolean,
body: Body,
targetPos: Vec2,
maxForce: number,
frequency?: number --[[5.0]],
damping?: number --[[0.7]]): MoveJoint
参数:
参数名 | 类型 | 描述 |
---|---|---|
canCollide | boolean | 指定刚体是否可以与其他刚体碰撞。 |
body | Body | 关节连接的刚体。 |
targetPos | Vec2 | 刚体应该拖拽到的目标位置。 |
maxForce | number | 关节能够施加的最大力。 |
frequency | number | 可选的频率比率,默认为5.0。 |
damping | number | 可选的阻尼比率,默认为0.7。 |
返回值:
返回类型 | 描述 |
---|---|
MoveJoint | 创建的拖拽关节。 |
prismatic
类型: 函数。
描述:
创建两个指定刚体之间的新移动关节。
签名:
prismatic: function(self: JointClass,
canCollide: boolean,
bodyA: Body,
bodyB: Body,
worldPos: Vec2,
axisAngle: number,
lowerTranslation?: number --[[0.0]],
upperTranslation?: number --[[0.0]],
maxMotorForce?: number --[[0.0]],
motorSpeed?: number --[[0.0]]): MotorJoint
参数:
参数名 | 类型 | 描述 |
---|---|---|
canCollide | boolean | 指定连接的两个刚体是 否应该相互碰撞。 |
bodyA | Body | 连接到关节的第一个刚体。 |
bodyB | Body | 连接到关节的第二个刚体。 |
worldPos | Vec2 | 关节的世界坐标。 |
axisAngle | number | 关节的轴角度。 |
lowerTranslation | number | 可选的下限平移量,默认为0.0。 |
upperTranslation | number | 可选的上限平移量,默认为0.0。 |
maxMotorForce | number | 可选的最大电机力,默认为0.0。 |
motorSpeed | number | 可选的电机速度,默认为0.0。 |
返回值:
返回类型 | 描述 |
---|---|
MotorJoint | 创建的移动关节。 |
pulley
类型: 函数。
描述:
在两个物理体之间创建一个滑轮关节。
签名:
pulley: function(self: JointClass,
canCollide: boolean,
bodyA: Body,
bodyB: Body,
anchorA: Vec2,
anchorB: Vec2,
groundAnchorA: Vec2,
groundAnchorB: Vec2,
ratio?: number --[[1.0]]): Joint
参数:
参数名 | 类型 | 描述 |
---|---|---|
canCollide | boolean | 连接的物体是否会相互碰撞。 |
bodyA | Body | 要连接的第一个物理体。 |
bodyB | Body | 要连接的第二个物理体。 |
anchorA | Vec2 | 第一个物体上的锚点的位置。 |
anchorB | Vec2 | 第二个物体上的锚点的位置。 |
groundAnchorA | Vec2 | 第一个物体上的地面锚点在世界坐标系中的位置。 |
groundAnchorB | Vec2 | 第二个物体上的地面锚点在世界坐标系中的位置。 |
ratio | number | [可选] 滑轮比率(默认值为1.0)。 |
返回值:
返回类型 | 描述 |
---|---|
Joint | 滑轮关节。 |
revolute
类型: 函数。
描述:
在两个物理体之间创建旋转关节。
签名:
revolute: function(self: JointClass,
canCollide: boolean,
bodyA: Body,
bodyB: Body,
worldPos: Vec2,
lowerAngle?: number --[[0.0]],
upperAngle?: number --[[0.0]],
maxMotorTorque?: number --[[0.0]],
motorSpeed?: number --[[0.0]]): MotorJoint
参数:
参数名 | 类型 | 描述 |
---|---|---|
canCollide | boolean | 连接的物体是否会相互碰撞。 |
bodyA | Body | 要连接的第一个物理体。 |
bodyB | Body | 要连接的第二个物理体。 |
worldPos | Vec2 | 关节将被创建的世界坐标位置。 |
lowerAngle | number | [可选] 下限角度限制(弧度)(默认为0.0)。 |
upperAngle | number | [可选] 上限角度限制(弧度)(默认为0.0)。 |
maxMotorTorque | number | [可选] 关节施加的最大扭矩以达到目标速度(默认为0.0)。 |
motorSpeed | number | [可选] 关节的期望速度(默认为0.0)。 |
返回值:
返回类型 | 描述 |
---|---|
MotorJoint | 旋转关节。 |
rope
类型: 函数。
描述:
在两个物理体之间创建绳子关节。
签名:
rope: function(self: JointClass,
canCollide: boolean,
bodyA: Body,
bodyB: Body,
anchorA: Vec2,
anchorB: Vec2,
maxLength: number): Joint
参数:
参数名 | 类型 | 描述 |
---|---|---|
canCollide | boolean | 连接的物体是否会相互碰撞。 |
bodyA | Body | 要连接的第一个物理体。 |
bodyB | Body | 要连接的第二个物理体。 |
anchorA | Vec2 | 第一个物体上的锚点的位置。 |
anchorB | Vec2 | 第二个物体上的锚点的位置。 |
maxLength | number | [可选] 锚点之间的最大距离(默认为0.0)。 |
返回值:
返回类型 | 描述 |
---|---|
Joint | 绳子关节。 |
weld
类型: 函数。
描述:
创建两个物体之间的焊接关节。
签名:
weld: function(self: JointClass,
canCollide: boolean,
bodyA: Body,
bodyB: Body,
worldPos: Vec2,
frequency?: number --[[0.0]],
damping?: number --[[0.0]]): Joint
参数:
参数名 | 类型 | 描述 |
---|---|---|
canCollide | boolean | 是否允许连接的物体之间发生碰撞。 |
bodyA | Body | 第一个将被连接的物体。 |
bodyB | Body | 第二个将被连接的物体。 |
worldPos | Vec2 | 连接物体的世界位置。 |
frequency | number | [可选] 关节的刚度频率,默认为 0.0。 |
damping | number | [可选] 关节的阻尼比率,默认为 0.0。 |
返回值:
返回类型 | 描述 |
---|---|
Joint | 新创建的焊接关节。 |
wheel
类型: 函数。
描述:
创建两个物体之间的轮子关节。
签名:
wheel: function(self: JointClass,
canCollide: boolean,
bodyA: Body,
bodyB: Body,
worldPos: Vec2,
axisAngle: number,
maxMotorTorque?: number --[[0.0]],
motorSpeed?: number --[[0.0]],
frequency?: number --[[2.0]],
damping?: number --[[0.7]]): MotorJoint
参数:
参数名 | 类型 | 描述 |
---|---|---|
canCollide | boolean | 是否允许连接的物体之间发生碰撞。 |
bodyA | Body | 第一个将被连接的物体。 |
bodyB | Body | 第二个将被连接的物体。 |
worldPos | Vec2 | 连接物体的世界位置。 |
axisAngle | number | 关节轴的角度,以弧度为单位。 |
maxMotorTorque | number | [可选] 关节电机可以施加的最大力矩,默认为 0.0。 |
motorSpeed | number | [可选] 关节电机的目标速度,默认为 0.0。 |
frequency | number | [可选] 关节的刚度频率,默认为 2.0。 |
damping | number | [可选] 关节的阻尼比率,默认为 0.7。 |
返回值:
返回类型 | 描述 |
---|---|
MotorJoint | 新创建的轮子关节。 |
__call
类型: 元方法。
描述:
根据给定的关节定义和物理体字典创建关节实例,字典中包含需要连接的物理体。
签名:
metamethod __call: function(self: JointClass, def: JointDef, itemDict: Dictionary): Joint
参数:
参数名 | 类型 | 描述 |
---|---|---|
def | JointDef | 关节定义。 |
itemDict | Dictionary | 包含创建关节相关的物理体和关节对象的字典。 |
返回值:
返回类型 | 描述 |
---|---|
Joint | 新创建的关节。 |